/*
 * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 */

package jdk.io;

import java.io.IOException;

import java.io.IOException;

/**
 * {@code Closeable} 是可以关闭的数据源或目标。
 * 调用 close 方法以释放对象持有的资源（如打开的文件）。
 *
 * @since 1.5
 */
public interface Closeable extends AutoCloseable {

    /**
     * 关闭此流并释放与其关联的任何系统资源。
     * 如果流已关闭，则调用此方法无效。
     *
     * <p> 如 {@link AutoCloseable#close()} 中所述，
     * 关闭可能失败的情况需要特别注意。强烈建议
     * 在抛出 {@code IOException} 之前放弃底层资源，
     * 并在内部将 {@code Closeable} 标记为已关闭。
     *
     * @throws IOException 如果发生 I/O 错误
     */
    public void close() throws IOException;
}
